]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Allow testing GDM login dialog from the session
authorGiovanni Campagna <gcampagna@src.gnome.org>
Tue, 7 Aug 2012 15:52:24 +0000 (17:52 +0200)
committerGiovanni Campagna <gcampagna@src.gnome.org>
Tue, 23 Oct 2012 17:09:00 +0000 (19:09 +0200)
Check an environment variable, GDM_GREETER_TEST. If 1, LoginDialog will
skip anything that fails outside a GDM session.
It is therefore possible to test the GDM greeter without installing it
system-wide, by attempting login as the already logged in user (uses the
same code path as the unlock dialog).

https://bugzilla.gnome.org/show_bug.cgi?id=683725

js/gdm/loginDialog.js

index 7ea93ba6d9f0386a9e9e4517640d7ef2bf61a98d..15308ddfc5587a0a05bc7a2cb994338b0cafe5e0 100644 (file)
@@ -638,15 +638,17 @@ const LoginDialog = new Lang.Class({
         this._userManager = AccountsService.UserManager.get_default()
         this._greeterClient = new Gdm.Client();
 
-        this._greeter = this._greeterClient.get_greeter_sync(null);
+        if (GLib.getenv('GDM_GREETER_TEST') != '1') {
+            this._greeter = this._greeterClient.get_greeter_sync(null);
 
-        this._greeter.connect('default-session-name-changed',
-                              Lang.bind(this, this._onDefaultSessionChanged));
+            this._greeter.connect('default-session-name-changed',
+                                  Lang.bind(this, this._onDefaultSessionChanged));
 
-        this._greeter.connect('session-opened',
-                              Lang.bind(this, this._onSessionOpened));
-        this._greeter.connect('timed-login-requested',
-                              Lang.bind(this, this._onTimedLoginRequested));
+            this._greeter.connect('session-opened',
+                                  Lang.bind(this, this._onSessionOpened));
+            this._greeter.connect('timed-login-requested',
+                                  Lang.bind(this, this._onTimedLoginRequested));
+        }
 
         this._userVerifier = new GdmUtil.ShellUserVerifier(this._greeterClient);
         this._userVerifier.connect('ask-question', Lang.bind(this, this._askQuestion));